/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ControladoresUI;

import Ingresos.ISemestre;
import ManagersUI.SemestresRegistroManager;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.List;
import javafx.event.*;
import javafx.fxml.FXML;
import javafx.scene.control.*;
import java.util.Date;
import javax.swing.JOptionPane;
/**
 * FXML Controller class
 *
 * @author JEscalante
 */
public class SemestresRegistroController{

    /**
     * Initializes the controller class.
     */
    SemestresRegistroManager semestresRegistroManager;
    @FXML ComboBox cmbTipoSemestre, cmbAños;
    public void initialize() {}
  
    public void initManager(final SemestresRegistroManager semestresRegistroManager) {
        this.semestresRegistroManager = semestresRegistroManager;
        cargarDatos();
    }
    private void cargarDatos(){
        String[] datosSemestre = {"1er. Ciclo","Interciclo","2do. Ciclo"};
        this.cmbTipoSemestre.setPromptText("Seleccione un tipo de semestre...");
        this.cmbTipoSemestre.getItems().clear();
        this.cmbTipoSemestre.getItems().addAll(Arrays.asList(datosSemestre));
        List<Integer> datosAños = new ArrayList<Integer>();
        for(int i=2000; i<2021; i++)
            datosAños.add(i);
        this.cmbAños.setPromptText("Seleccione un año...");
        this.cmbAños.getItems().clear();
        this.cmbAños.getItems().addAll(datosAños);
    }
    @FXML
    private void cerrarVentana(ActionEvent event){
        this.semestresRegistroManager.cerrarVentana();
    }
    @FXML
    private void actualizarRegistro(ActionEvent event) throws Exception{
        if((cmbTipoSemestre.getValue()!=null)&&(cmbAños.getValue()!=null)){
            String semestre = (String) cmbTipoSemestre.getValue();
            int numSemestre = 0;
            switch(semestre){
                case "1er. Ciclo":
                    numSemestre = 1;
                    break;
                case "Interciclo":
                    numSemestre = 3;
                    break;
                case "2do. Ciclo":
                    numSemestre = 2;
                    break;
            }
            int numAño = (int) cmbAños.getValue();
            DateFormat df = new SimpleDateFormat("dd-MM-yyyy");
            
            Date año = df.parse("01-01-"+numAño);
            ISemestre manejo = new ISemestre();
            
            System.out.println("Año: "+año);
            manejo.guardar(numSemestre, año);
        }
        JOptionPane.showMessageDialog(null, "Se ha registro el semestre exitosamente.");
        this.semestresRegistroManager.cerrarVentana();
    }
}
